Altai Node — Windows
====================

1. Unzip this folder somewhere you will keep it.
2. Double-click altai-node.exe.

Your browser opens on http://127.0.0.1:18090. That page is the whole interface: what
this machine is, what it will contribute (every value adjustable), what it qualifies to
serve, and a box to use the network from.

A console window stays open while the node runs. Closing it stops the node, which drains
properly first. Reopen the page any time at http://127.0.0.1:18090.


"Windows protected your PC"
---------------------------

Expected. This build is not code-signed, which needs a certificate we have not bought
yet. Until then:

    More info -> Run anyway

We would rather tell you this than have you discover it.


The serving engine
------------------

This folder contains an "engine" directory beside altai-node.exe, with the inference
engine already in it — a CPU build of llama.cpp, resolved from upstream's own release for
the exact commit this node pins, not built by us.

One thing may be missing from your machine, and it is not in this archive. The engine is
built with Microsoft's C++ toolchain and needs the Visual C++ 2015-2022 Redistributable
(x64) — VCRUNTIME140.dll, VCRUNTIME140_1.dll and MSVCP140.dll. Most Windows machines
already have it, because almost any desktop application installs it. If the node reports
that it cannot serve and names one of those files, install it from:

    https://aka.ms/vs/17/release/vc_redist.x64.exe

We do not ship those DLLs ourselves: redistributing Microsoft's runtime carries its own
licence terms, and that is a decision we have not taken.

It is CPU only. If you have an NVIDIA GPU, the engine will still run but without CUDA
acceleration — a CUDA build exists upstream but is not bundled yet; see
packaging/bundle-engine-windows.sh in the repository for why.

If the "engine" folder is missing or empty, the node will say it cannot serve, and the
page will say so plainly. Two ways to give it one:

    engine\                            put llama-server.exe, ggml-rpc-server.exe and
                                        the DLLs they load here
    set ALTAI_ENGINE_BIN=C:\path       or point at them where they already are

What you set in ALTAI_ENGINE_BIN wins over whatever shipped — unless that directory
holds no engine, in which case the node falls back to the bundled one, and says so.

Your settings live in %APPDATA%\altai\altai.toml.


What this never does
--------------------

- Exceed a limit you set
- Expose the inference engine to the network. It binds 127.0.0.1 and is reached only
  through an authenticated tunnel
- Transmit your signing key. It is generated on this machine and never leaves it
- Accept an inbound connection from the coordinator. This node dials out, which is also
  why it works behind a home router with nothing forwarded


Options
-------

    altai-node.exe --help
